// Babel 转码器：Babel 是一个广泛使用的 ES6 转码器，可以将 ES6 代码转为 ES5 代码，从而在老版本的浏览器执行。

// 例如： 

// 转码前
input.map(item => item + 1)

// 转码后
input.map(function (item) {
  return item + 1;
});


// ****************************************************************************************************************************

// polyfill 垫片：

// Babel 默认只转换新的 JavaScript 句法（syntax），而不转换新的 API。

// 比如Iterator、Generator、Set、Map、Proxy、Reflect、Symbol、Promise等全局对象，
// 以及一些定义在全局对象上的方法（比如Object.assign）都不会转码。
// 举例来说，ES6 在Array对象上新增了Array.from方法。Babel 就不会转码这个方法。

// 如果想让这个方法运行，可以使用core-js和regenerator-runtime(后者提供generator函数的转码)，为当前环境提供一个垫片。